Email based e-commerce with qr code barcode, image recognition alternative payment method and biometrics

ABSTRACT

A system and method implemented in an e-commerce system to facilitate transactions between a customer and a vendor is disclosed. The method includes generating the requested at least one QR code and token, wherein the at least one QR code and token includes at least an email field, transmitting the at least one QR code and token, receiving a response email, wherein the response email includes the token, decoding, the token, performing a validation, and processing the transaction, on a condition that the validation(s) are approved.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a Continuation of U.S. patent application Ser. No.15/110,662 filed Jul. 8, 2016, which is a 371 of PCT/US0214/072279 filedDec. 23, 2014.

This application also claims the benefit of Application No. 61/925,409filed on Jan. 9, 2014 and entitled MULTIPART AND MIXED/MULTIPARTEMAIL-BASED E-COMMERCE, and Application No. 62/096,440 filed on Dec. 23,2014, which applications are incorporated by reference as if fully setforth.

FIELD OF INVENTION

The present invention is related to electronic commerce systems. Moreparticularly, the present invention is a system and method thatfacilitates electronic commerce by using one or more MIME Multipart orMixed/Multipart messages.

BACKGROUND

In the current climate of smartphone, telecommunications and onlinenetworks there is an ever growing web of systems by which people andsystems may communicate. Initially, networks were dominated bytext-based interactions. Social networks in themselves provide manyoptions, not to mention apps for smartphones, texting, chat rooms andblogs. Many capabilities grew to include images as part of users'interactions. This variety of networks is as varied as the reasons touse them, and many are not mutually exclusive to one another. Businessesand organizations are in a constant competition to maintain members andusers across this variety of networks.

Quick Response (QR) codes and barcodes have been used by a wide varietyof online vendors and organizations. Hits on a website, amount of openedemails, number of members, quantity of “likes” and tweets are some ofthe measures of success for businesses to gauge the number followers andthe depth of their enthusiasm. Although all of these are a good way toadvertise, there still remains little alternative to the actual paymentprocess a user needs to perform in order to make a purchase. Going to awebsite, inputting information and generating a password is still thedominant method for paying for things online.

Within this technological climate, email still remains a perennialtechnology for electronic messaging. Many use email in tandem with othernetworks and for more official correspondence. The vast majority ofservices, websites, social networks and online retailers require anemail address as the basis for joining and confirming identity. Email isan underutilized tool that is too often thought of as a place to writemessages and correspond with others, or as a way to advertise topotential customers. However, email has not developed into a seamlessvehicle to sell products or to perform a financial transaction.

Advertising emails use photography and graphics to promote products andraise money for organizations. However, they are primarily tools forenticement since they encourage customers to either go to a webpage orvisit a store to complete a transaction, and are not directly related tothe payment process. The need to move beyond Simple Mail TransferProtocol (SMTP) has not led to further innovation in financialtransactions. Multipurpose Internet Mail Extensions (MIME) are alsounderutilized and not used for secure financial transactions. The onlinemarketplace does not yet have a coherent integration of emailattachments within email-based transaction.

Currently, technology for performing financial transactions online suchas electronic purchases, donation or paying bills is cumbersome andcomplicated. Usernames and passwords are required on virtually allservices and each transaction. A service that utilizes the secureenvironment of the customers' email client as a method to validatepayment would remove a major annoyance to customers and remove barriersfrom their purchases. Vendors would welcome increased contact and thecapacity to close a sale using the email client.

Additionally, the use of QR codes, barcodes, and image recognition aidscustomers in locating information online and helps advertise salesinformation. However, QR codes have not been utilized outside of theadvertisement environment.

SUMMARY

A method implemented in an e-commerce system to facilitate transactionsbetween a customer and a vendor is disclosed. The method includesgenerating the requested at least one QR code and token, wherein the atleast one QR code and token includes at least an email field,transmitting the at least one QR code and token, receiving a responseemail, wherein the response email includes the token, decoding, thetoken, performing a validation, and processing the transaction, on acondition that the validation(s) are approved.

An e-commerce system to facilitate transactions between a customer and avendor is disclosed. The e-commerce system includes a receiverconfigured to receive a request for at least one QR code and token foruse in an advertising campaign, a processor configured to generate atleast one QR code and token, wherein the at least one QR code and tokenincludes at least an email field, a transmitter configured to transmitthe at least one QR code and token to a vendor server, the receiverconfigured to receive a response email, wherein the response emailincludes the token, the processor configured to decode the token, theprocessor configured to perform a validation, and the processorconfigured to process the financial transaction, on a condition that thevalidation(s) are approved.

A method implemented in a vendor system for transactions between acustomer and a vendor facilitated by an e-commerce system is disclosed.The method includes transmitting, by a transmitter, a request for atleast one QR code and token for use in an advertising campaign,receiving, by a receiver, the at least one QR code and token, whereinthe at least one QR code and token includes at least one email field,transmitting, by a transmitter, a plurality of advertisement emails to alist of recipients, wherein the list of recipients includes registeredand non-registered individuals, the advertisement emails including amailto link that includes the at least one QR code and token, receiving,by the receiver, a notification message, wherein the notificationmessage includes a confirmation that a transaction has been processedbased on one of the transmitted plurality of advertisement emails, andexecuting an order for a customer in response to the receivednotification message.

BRIEF DESCRIPTION OF THE DRAWINGS

A more detailed understanding may be had from the following description,given by way of example in conjunction with the accompanying drawingswherein:

FIG. 1 illustrates a transactional flow diagram of a basic transactionwhere an email-based e-commerce system acquires information from thevendor to complete transaction;

FIG. 1a illustrates an example advertisement email message that solicitsthe purchase of goods from a vendor;

FIG. 1b illustrates an email message for placing an order;

FIG. 1c illustrates an advertisement email message that solicits adonation;

FIG. 1d illustrates an email message for initiating a donation;

FIG. 2 illustrates a system diagram of an email-based QR and imagerecognition system;

FIG. 3 illustrates an example of a QR code;

FIG. 4 illustrates a transactional flow diagram for using a QR code withan email-based e-commerce system using email targeted tokens;

FIG. 4a illustrates a transactional flow diagram for using a QR codewith an email-based e-commerce system having a combined vendor systemand e-commerce system using email targeted tokens;

FIG. 5 illustrates a transactional flow diagram for using a QR code withan email-based e-commerce system using URL targeted tokens;

FIG. 5a illustrates an example of QR code advertisement with email-basede-commerce token;

FIG. 5b illustrates an example of QR code smartphone reader ofemail-based e-commerce token;

FIG. 5c illustrates an example of response email generated with tokenfor email-based financial transaction;

FIG. 6 illustrates a transactional flow diagram for using a QR code withan email-based e-commerce system using for a non-registered member;

FIG. 7 illustrates a transactional flow diagram for QR code withadditional step of URL product selection page;

FIG. 8 illustrates an example printed utility bill with QR code;

FIG. 9 illustrates an example of a QR code and token generator web-basedinterface;

FIG. 10 illustrates a transactional flow diagram for one QR code thatrequires additional information once the email is received;

FIG. 11 illustrates a transaction flow diagram for image recognitionthat does not require an application on the customer's device;

FIG. 12 illustrates a transactional flow diagram of email-basede-commerce with image recognition;

FIG. 13 illustrates a transactional flow diagram of mobile web checkout;

FIG. 14 illustrates an example of a smartphone application that is acashier QR code/barcode reader with email client for email-basede-commerce transactions;

FIG. 15 illustrates a transactional flow diagram for application that isa cashier QR code/barcode reader with email client for email-basede-commerce transactions;

FIG. 16a illustrates an example of interface for biometric interface andemail-based e-commerce;

FIG. 16b illustrates a transactional flow diagram for biometricauthentication and email-based e-commerce;

FIG. 16c illustrates a transactional flow diagram for alternativepayment methods;

FIG. 17 illustrates a transactional flow diagram for a variation of ashortened QR code; and

FIG. 18 illustrates an example of a shortened QR code.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

All embodiments described below may be used in tandem or in relation tospecific vendor needs. They may also be integrated with an email serviceprovider or directly with a payment processor. Payment processing mayoccur in any number of ways using multiple gateways, credit cards, debitcards, direct carrier billing and automatic clearing houses. Althoughthe description below focuses on the use of email messaging, socialmedia networks may also be substituted. The configuration of the systemmay vary based on client needs. However, for the purposes of thisapplication FIG. 1 represents one possible basic method and FIG. 2represents one possible layout.

A method and apparatus allows the @Pay Email Payment Gateway, (referredto below as the e-commerce system), and/or associated vendors togenerate Quick Response (QR) codes, barcodes, or other image recognitioncriteria that a vendor may use in advertisements or invoicing. QR codes,barcodes, or other such image recognition criteria that a vendor may usein advertisements or invoicing are hereafter referred to collectively asQR codes.

Generally, QR codes define a matrix barcode (or two-dimensionalbarcode). A barcode is a machine-readable optical label that containsinformation about the item which it represents. A type of QR code usesfour standardized encoding modes (numeric, alphanumeric, byte/binary,and kanji) to efficiently store data. The QR code is known to includefast readability and greater storage capacity compared to standardbarcodes. A QR code may include black modules (i.e., square dots)arranged in a square grid on a white background, which can be read by animaging device, such as a camera or phone, for example, and processedusing Reed-Solomon error correction until the image can be appropriatelyinterpreted. The required data may be extracted from the patternspresent in both horizontal and vertical components of the image.

These codes may be scanned using an application on a mobile device orother reader as described and a response email may be generated. Thereare several ways to initiate a transaction. In one example, the customerviews an advertisement or other document that includes a QR code andscans the QR code. Scanning the QR code generates an email addressed tothe e-commerce system. This email may include a token with additionalinformation, including transaction details, for example. Generally, atoken may be created using software such as Ruby or PHP. These tokensmay include information about the merchant, the transaction amount, andthe customer's e-mail address (if applicable).

Upon receipt of the email, the e-commerce system may perform checks toverify the email. Once verified, the payment may be processed. Thisprocess may also use image recognition aids that allow a product logo orlocation to be recognized and a response email may be generated tocomplete the transaction, or display to the customer choices for offersbased on the recognized material.

In another embodiment, the e-commerce system may receive images such asQR codes and process the images and files once they arrive at thee-commerce system. The addition of these recognition technologies to the@Pay E-commerce systems enable greater flexibility and a wider array ofproduct offers described below.

FIG. 1 illustrates a transactional flow diagram of a basic transactionwhere an email-based e-commerce system acquires information from thevendor to complete transaction 100. In this embodiment, a customergenerates a response email to initiate a transaction at step 110. Thisresponse email may include a token as will be described herein. Itshould be noted that although the email is termed a “response” email, itneed not be in response to any other email. In other words, thegeneration of a response email in step 110 may actually initiate theprocess for completing a transaction 100. An e-commerce system 220 isconfigured to receive 120 incoming email messages from customer device240 that is requesting a transaction but requires additional informationin order to process the payment. The e-commerce system 220 is configuredto validate the incoming email message at step 130. The validation mayinclude authentication using for example, protocols such as SPF andDKIM, and may include analyzing or otherwise decoding the token. Itshould be understood that although SPF and DKIM are specifically setforth herein, any type of “validation” procedure (i.e. one that ensuresthat the email is from the source that it indicates it is from) may beutilized. For example simply comparing the email address in the “From”field to a list may be a simple validation procedure. The token may haveone identifier for the vendor or an identifier may be in any field. Theidentifier may be the email itself or some other identifier that is nota token.

Generally, Sender Policy Framework (SPF) is an email validation systemdesigned to detect email spoofing by providing a mechanism to allowreceiving mail exchangers to check that incoming mail from a domain isbeing sent from a host authorized by that domain's administrators. Thelist of authorized sending hosts for a domain may be published in theDomain Name System (DNS) records for that domain in the form of aspecially formatted TXT record. Sender Policy Framework is defined inIETF publication RFC 7208, which is incorporated by reference as iffully set forth.

The Simple Mail Transfer Protocol permits any computer to send emailclaiming to be from any source address. SPF allows the owner of anInternet domain to specify which computers are authorized to send mailwith sender addresses in that domain, using Domain Name System (DNS)records. Receivers verifying the SPF information in TXT records mayreject messages from unauthorized sources before receiving the body ofthe message.

The sender address is transmitted at the beginning of the SMTP dialog.If the server rejects the sender, the unauthorized client should receivea rejection message, and if that client was a relaying message transferagent (MTA), a bounce message to the original sending address may begenerated. If the server accepts the sender, and subsequently alsoaccepts the recipients and the body of the message, it should insert aReturn-Path field in the message header in order to save the senderaddress.

Generally, DomainKeys Identified Mail (DKIM) is an email validationsystem designed to detect email spoofing by providing a mechanism toallow receiving mail exchangers to check that incoming mail from adomain is authorized by that domain's administrators. A digitalsignature included with the message may be validated by the recipientusing the signer's public key published in the DNS. DKIM is the resultof merging DomainKeys and Identified Internet Mail. Prominent emailservice providers implementing DKIM include Yahoo, Gmail, AOL andFastMail. Any mail from these organizations would typically carry a DKIMsignature.

More specifically, both modules, signing and verifying, are usually partof a mail transfer agent (MTA). The signing organization may be a directhandler of the message, such as the author, the originating sending siteor an intermediary along the transit path, or an indirect handler suchas an independent service that provides assistance to a direct handler.In most cases, the signing module acts on behalf of the authororganization or the originating service provider by inserting aDKIM-Signature: header field. The verifying module typically acts onbehalf of the receiver organization.

DKIM is independent of Simple Mail Transfer Protocol (SMTP) routingaspects in that it operates on the RFC 5322 message—the transportedmail's header and body—not the SMTP envelope defined in RFC 5321. Hencethe DKIM signature survives basic relaying across multiple MTAs. DKIMallows the signer to distinguish its legitimate mail stream. Thisability to distinguish legitimate mail from potentially forged mail hasbenefits for recipients of e-mail as well as senders, and “DKIMawareness” is programmed into some e-mail software.

The “DKIM-Signature” header field, by way of example, may include a listof “tag=value” parts. Tags are short, usually only one or two letters.The most relevant ones are b for the actual digital signature of thecontents (headers and body) of the mail message, bh for the body hash, dfor the signing domain, and s for the selector. The default parametersfor the authentication mechanism are to use SHA-256 as the cryptographichash and RSA as the public key encryption scheme, and encode theencrypted hash using Base64. The receiving SMTP server uses the domainname and the selector to perform a DNS lookup. For example, given thesignature:

DKIM-Signature: v=1; a=rsa-sha256; d=example.net; s=brisbane;

-   -   c=relaxed/simple; q=dns/txt; l=1234; t=1117574938; x=1118006938;    -   h=from:to:subject:date:keywords:keywords;    -   bh=MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=;    -   b=dzdVyOfAKCdLXdJOc9G2q8LoXSlEniSbav+yuU4zGeeruD00lszZ        VoG4ZHRNiYzR.

A verifier queries the TXT resource record type ofbrisbane._domainkey.example.net. The selector is a straightforwardmethod to allow signers to add and remove keys whenever they wish—longlasting signatures for archival purposes are outside DKIM's scope. Somemore tags are visible in the example:

v is the version,

a is the signing algorithm,

c is the canonicalization algorithm(s) for header and body,

q is the default query method,

l is the length of the canonicalized part of the body that has beensigned,

t is the signature timestamp,

x is its expire time, and

his the list of signed header fields, repeated for fields that occurmultiple times.

The DKIM-Signature header field itself is always implicitly included inh.

The data returned from the query is also a list of tag-value pairs. Itincludes the domain's public key, along with other key usage tokens andflags. The receiver can use this to then decrypt the hash value in theheader field and at the same time recalculate the hash value for themail message (headers and body) that was received. If the two valuesmatch, this cryptographically proves that the mail was signed by theindicated domain and has not been tampered with in transit.

Signature verification failure does not force rejection of the message.Instead, the precise reasons why the authenticity of the message couldnot be proven should be made available to downstream and upstreamprocesses. Methods for doing so may include sending back a message, oradding an Authentication-Results header field to the message asdescribed in RFC 7001, which is incorporated as if fully set forth.

The e-commerce system 220 may notify the vendor system 230 that thisemail address is validated and that the customer has made the request atstep 140. The vendor system 230 recognizes the email address anddetermines the transaction details 150. Such transaction details, forexample, may be an amount to be charged. A response with the paymentamount to be charged and any other additional information that might berequired is generated at step 160. If there is a specific amount to becharged, the e-commerce system 220 processes the payment 170. Thepayment may be processed by the vendor 230 and/or the e-commerce system220.

Alternatively or additionally, an additional email may be sent for aconfirmation. A confirmation email may be sent to the customer's emailaddress with a token embedded. The customer selects the mailto link togenerate the email response message 185 addressed to the e-commercesystem 220. The customer sends the email 190. When the e-commerce system220 receives this email it is validated and the payment processed 195.

If the customer is not registered with the e-commerce system 220 or withthe vendor system 230 further additional processing may be performed. Anemail may be sent to the customer with a URL link (not shown) to directthe customer to a sign-up page. When the customer selects the link, thecustomer is directed to a web-based sign up.

Method 100 illustrates a basic email payment to enable the presentationof a list of offers or payments that the customer and/or the vendor haveknowledge of, such as monthly rent, utility bill, credit card minimum,for example, and the e-commerce system 220 serves to validate thecustomer's request for an offer, the capacity to reference the offersand payments list and process the payment.

Mailto links in the email messages may include one or any combination ofthe following fields: a “mailto:” and/or “to” field that indicate one ormore email addresses of recipients of the new message; a “Copy To” or“CC” field that indicates one or more email addresses of recipients towhom a copy of the new message should be sent; a “Blind Copy To” or“BCC” field that indicates one or more email addresses of recipients towhom a blind copy of the new message should be sent; a field thatindicates the subject of the new message; and a field that indicates thebody of the new message. The mailto links may be defined according tothe format described in Internet Engineering Task Force (IETF) RFC2368,which is incorporated by reference as if fully set forth herein.

In order to aid in understanding the present description, and forcompleteness, FIG. 1a illustrates an example email message that solicitsthe purchase of goods from a vendor. While any number of other actionsincluding actions by a customer or user may initiate the transaction,this email message is used by way example only. Any type of transactionmay also be performed within the present system, including, but notlimited to, advertising, donation and bill payment for example. FIG. 1ashows an email display window 10 that may be used by the email clientmodule (244 of FIG. 2 below) to display a first example email messagefrom the message processing module. The email display window 10 mayinclude a Reply button 12, a control area 14, and a message body area16. The control area 14 may display control and/or header informationassociated with the email message, such as the email addresses of thesender and recipient of the message. According to this example, thecontrol area 14 shows that the sender of the message has the emailaddress “sales@company.com.” This is an email address that may beassociated with an account used by the e-commerce system (220 of FIG. 2below) for the communication of email messages. Further to this example,the control area 14 shows that the email address of the examplerecipient of the message (John Smith) is “john.smith@customer.com.” Thecontrol area 14 may also display information such as a subject of theemail message and the time the email message was sent. The Reply button12 may respond to user input to generate a new display element (notdepicted) to respond to the email message.

The message body area 16 may display the body of the email message. Asshown in FIG. 1a , the message body area 16 may display an example emailmessage that shows information related to two example products (Wine Oneand Wine Two) that are being offered for sale by an example vendor (TheWine Shop). The message body area 16 includes a picture of a bottle ofeach type of wine, as well as the price for a bottle of each type ofwine. The message body area 16 also includes, under the picture of thebottle of Wine One, a number of mailto links, such as the “1 Bottle,” “2Bottles,” “3 Bottles”, “6 Bottles,” and “1 Case (10 percent Discount)”links. The message body area 16 also includes similar links under thepicture of the bottle of Wine Two. These links may be defined accordingto the mailto URI scheme or other appropriate format, and each maydescribe a new email message that may be generated by the email clientmodule 244 when that link is selected.

The “1 Bottle” link beneath the picture of the Wine One bottle mayinclude information that describes an email message that, if received bythe e-commerce system 220, will indicate to the e-commerce system 220that John Smith would like to purchase one bottle of Wine One. As afurther example, Wine One may have a product identifier of “0005,” andJohn Smith may have a customer identifier of “0777.” According to thisexample, the “1 Bottle” link may describe an email message that isaddressed to an email account that is associated with the e-commercesystem 220, and that includes a message body that includes theidentifier for John Smith (“0777”), an identifier of the selectedproduct (“0005”), and an identifier of the quantity that John Smithwould like to order (in this example, a single bottle).

Alternatively or additionally, the email message described by the linkmay include information such as text that describes the order, anidentifier of the vendor (in this example, The Wine Shop), an emailcampaign identifier, and/or other information. Similarly, the “2Bottles” link beneath the picture of the Wine One bottle may includeinformation that describes an email message that, if received by thee-commerce system 220, will indicate to the e-commerce system 220 thatJohn Smith would like to purchase two bottles of Wine One. According tothis example, the “2 Bottles” link may be defined as follows:

-   -   <a href=“mailto:sales@company.com?    -   subject=Purchase percent 20from percent 20Wine percent 20Shop        percent 20 and    -   body=You percent 20have percent 20created percent 20an percent        20order percent 20for percent 20two percent 20bottles percent        20of percent 20Wine percent 20One. percent 20Press percent 20the        percent 20Send percent 20button percent 20to percent 20complete        percent 20the percent 20order. percent 0A percent        0AProductID0005 percent 20QualifierNA percent 20Qty0002 percent        20CustomerID0777 percent 20CampaignID0003”    -   target=“_blank”>2 Bottles</a>

Similarly, the “3 Bottles,” “6 Bottles,” and “1 Case (10 percentDiscount)” links beneath the picture of the Wine One bottle indicatecorresponding information for three bottles, six bottles, and one caseof bottles, respectively. Additionally, the “1 Bottle,” “2 Bottles,” “3Bottles,” “6 Bottles,” and “1 Case (10 percent Discount)” links underthe Wine Two bottle indicate corresponding information for Wine Two asthat described above with respect to the mailto links relating to WineOne.

The email client module 244 may receive a user input that indicates thatone of the links displayed in the message body area 16 is selected. Theuser input may be, for example, a mouse click, keyboard input, or anyother type of input that indicates that a link is selected. The emailclient module 244 may, in response to this user input, generate anddisplay an order email message as specified by the selected link.

FIG. 1b illustrates an email message for placing an order. FIG. 1b showsan example message composition window 20 that may be displayed inresponse to selection of a link from the message body area 16 of theemail display window 10 of FIG. 1a . The message composition window 20of FIG. 1b may include a Send button 22, a To area 24, a CC area 26, aBCC area 28, a Subject area 30, and a message body area 32. The Sendbutton 22 in the message composition window 20 of FIG. 1b may beresponsive to input from a user such as a mouse click, keyboard input,or any other type of input. The different areas 24, 26, 28, 30, 32 inthe message composition window 20 display different portions of an emailmessage. For example, the To area 24 includes text that indicates emailaddresses to which the email message is addressed, while the messagebody area 32 displays the contents of the body of the email message.Each or any of these different areas 24, 26, 28, 30, 32 may be editablebased on user input. Changes to the contents of these areas 24, 26, 28,30, 32 may change the corresponding portion of the email message. Itshould be noted that not all of these fields may be utilized.

FIG. 1b shows an example wherein the “2 Bottles” link beneath thepicture of the Wine One and described above with reference to FIG. 1a isselected. The To area 24 indicates that the message is addressed tosales@company.com. The Subject area 30 indicates that the subject of themessage is “Purchase from Wine Shop.” The CC area 26 and BCC area 28 areblank. Continuing the example of FIG. 1b , Wine One product has aproduct identifier of “0005” and John Smith has a customer identifier of“0777.” Accordingly, the message body area 32 includes the text“ProductID0005” and “CustomerID0777.” The text presented herein areexamples. The strings may include additional information such as vendoridentifier, bill identifier, statement identifier, or account number,for example. To indicate that the user has selected the purchase of twobottles, the message body area 32 includes the text “Qty0002.” Further,the message body area 32 includes the text “CampaignID0033,” indicatingthat the order is associated with an email campaign with an identifierof “0033.”

In an instance where a different link from the message body area 16 ofFIG. 1a is selected, the display areas 24, 26, 28, 30, 32 in the messagecomposition window 20 may include contents specified by the selecteddifferent link. For example, in an instance where a link related to WineTwo is selected, the message body area would not include the text“ProductID0005,” but would include text that indicates the correspondingidentifier for Wine Two.

FIG. 1c illustrates an advertisement email message that solicits adonation. FIG. 1c shows an email display window 40 that may be used bythe email client module 244 to display a second example email messagefrom the message processing module. The email display window 40 includesa Reply button 42, a control area 44, and a message body area 46. Thesedisplay elements 42, 44, 46 may possess similar and/or analogouscharacteristics and/or perform similar functionality as correspondingdisplay elements 22, 24, 26 in the email display window 20 of FIG. 1a .According to the example of FIG. 1c , the control area 44 shows that thesender of the message has the email address “donate@company.com.” Thisis an email address that may be associated with an account used by thee-commerce system 220 for the communication of email messages. Furtherto this example, the control area 44 shows that the email address of theexample recipient of the message (John Smith) is“john.smith@customer.com.”

As shown in FIG. 1c , the message body area 46 of the email displaywindow 40 may display an example email message that shows informationrelated the solicitation of donations for an example non-profitorganization (“Charitable Organization”). The message body area 46 alsoincludes mailto links, such as the “$5.00,” “$10.00,” “$25.00,”“$50.00,” and “$100.00” links. These links may possess similar and/oranalogous characteristics, and/or include similar and/or analogousinformation, as the mailto links described above with reference to FIG.1a . The “$5.00” link describes an email message that, if received bythe e-commerce system 220, will indicate to the e-commerce system 220that John Smith would like to donate $5.00 to Charitable Organization.Similarly, the “$10.00,” “$25.00,” “$50.00, and $100.00” links describeemail messages with corresponding information for $10.00, $25.00,$50.00, and $100.00 donations, respectively.

The email client module 244 may receive a user input that indicates thatone of the links displayed in the message body area 46 is selected. Theemail client module 244 may, in response to this user input, generateand display an order email message as specified by the selected link.

FIG. 1d illustrates an email message for initiating a donation. FIG. 1dshows an example message composition window 50 that may be displayed inresponse to a selection of a link from the message body area 46 of theemail display window 40 of FIG. 1b . The message composition window 50of FIG. 1d may include a Send button 52, a To area 54, a CC area 56, aBCC area 58, a Subject area 60, and a message body area 62. Thesedisplay elements 52, 54, 56, 58, 60, 62 may possess similar and/oranalogous characteristics and/or perform similar functionality ascorresponding display elements 22, 24, 26, 28, 30, 32 in the messagecomposition window 20 of FIG. 1 b.

FIG. 1d shows an example wherein the “$100.00” link from the messagebody area 46 of the email display window 40 of FIG. 1c is selected. TheTo area 54 indicates that the message is addressed todonate@company.com. The Subject area 60 indicates that the subject ofthe message is “Donation to Charitable Organization.” The CC area 56 andBCC area 58 are blank. According to this example, a donation of $100.00to Charitable Organization has a product identifier of “0099,” and JohnSmith has a customer identifier of “0777.” Accordingly, the message bodyarea 62 includes the text “ProductID0099” and “CustomerID0777.” Further,the message body area 62 includes the text “CampaignID0044,” indicatingthat the order is associated with an email campaign with an identifierof “0044.”

The email client module 244 may send the generated order email messageto the e-commerce system 220. This may be performed in response to inputfrom a user of the customer client device (240 of FIG. 2). As oneexample, the email client module 244 may, in response to a selection ofthe Send button 52 in the message composition window 50 of FIG. 1d ,transmit an order email message based on the contents of the fields 54,56, 58, 60, 62 in the message composition window 50. As another example,the email client module 244 may, in response to a selection of the Sendbutton 52 in the message composition window 50 of FIG. 1d , transmit anorder email message based on the contents of the fields 54, 56, 58, 60,62 in the message composition window 50.

FIG. 2 illustrates a system diagram of an email-based QR and imagerecognition system 200. The example system 200 shown in FIG. 2 may beused for e-commerce transactions. The example system 200 includes avendor system 230, an e-commerce system 220, a customer device 240, abanking server (not shown), an email service provider 250, a point ofsale device 215, an alternate payment device and a payment processingsystem 260 that may communicate over one or more wired and/or wirelesscommunication networks 270. The wired or wireless communication networks270 may be public, private or a combination of public or privatenetworks.

The customer device 240 may be, for example, a cellular phone, asmartphone, a desktop computer, a laptop computer, a tablet computer, orany other appropriate computing device. The customer device 240 includesa processor, memory, a web browser unit 242 that may communicate datato/from the web server module(s) in the vendor system 230 and e-commercesystem 220, an email client 244, a scanner application 246 and a cashierapplication 248. The web browser unit 242 may include and/or communicatewith one or more sub-modules that perform functionality such asrendering HTML (including but not limited to HTML5), rendering rasterand/or vector graphics, executing JAVASCRIPT, and/or renderingmultimedia content.

Alternatively or additionally, the web browser unit 242 may implementRich Internet Application (RIA) and/or multimedia technologies such asADOBE FLASH and/or other technologies compatible with Internet basedcommunications. The web browser unit 242 may implement RIA and/ormultimedia technologies using one or web browser plug-in modules (e.g.,ADOBE FLASH), and/or using one or more sub-modules within the webbrowser unit 242 itself. The web browser unit 242 may display data onone or more display devices that are included in, or connected to, thecustomer device 240, such as a liquid crystal display (LCD) display ormonitor. The customer device 240 may receive input from the user of thecustomer device 240 from input devices (not depicted) that are includedin, or connected to, the customer device 240, such as a keyboard, amouse, a microphone or a touch screen, and provide data that indicatesthe input to the web browser unit 242.

The vendor system 230 may include a web server 232, an order executionunit 234, a processor, memory, customer account information 238, and anemail client 236.

The web server 232 provides a website that may be accessed by a customerdevice 240. The web server 232 may implement the HTTP protocol, and maycommunicate Hypertext Markup Language (HTML) pages and related data fromthe website to/from the customer device 240 using HTTP. The vendorsystem 230 may be connected to one or more private or public networks(such as the Internet), via which the web server 232 communicates withdevices such as the customer device 240. The web server 232 may generateone or more web pages and may communicate the web pages to the customerdevice 240, and may receive responsive information from the customerdevice 240.

The vendor system 230 may also include one or more additional componentsor modules (not depicted), such as one or more load balancers, firewalldevices, routers, switches, and devices that handle power backup anddata redundancy.

The order execution unit 234 is configured to receive instructions fromreceived messages and executes orders on behalf of the vendor system230.

The memory may be configured to store information associated withe-commerce transactions. This may include inventory information,information used to generate web pages, customer information, and othere-commerce data.

The email client 236 may access and manage the vendor's email.

The e-commerce system 220 may include a token generator 280, a QRgenerator 284, an interface module 286, a purchase execution module 288,a message execution module 290, a database module 292, a token decoder282, a DKIM/SPF Check module 294, a notification HTTP module 296, anemail interface module 298, a hook module 299 an account management unit222 and a security module 224. While only one vendor system 230 is showncommunicating with the e-commerce system 220, this is shown as anexample only. The e-commerce system 220 may communicate with an internalor external email service provider 250 and an internal or externalpayment processing system 260. The e-commerce system 220 may communicatewith multiple vendor systems 230. Similarly, vendors may register withthe e-commerce system 220. The e-commerce system 220 may provide thevendor system 230 with a public key and private key to be used in tokentransaction in accordance with the methods described herein. When atransaction is attempted (e.g. for invoices and payments), thee-commerce system 220 decodes the token, authenticates the sender of theemail, which may allow the transaction to be processed. A look-up may beperformed by the e-commerce system 220. This look-up may take the formof a request hook, for example. While the e-commerce system 220 isdepicted as a separate entity in FIG. 2, this is shown as an exampleonly. The e-commerce system 220 may be controlled and/or co-located withthe vendor system 230, and/or the email service provider 250.

The token generator 280 may generate tokens for use in e-commercetransactions. Tokens may be encrypted or plain text strings whichcontain information to perform a transaction when sent to the e-commercesystem(s) 220. A token may be one or multiple encrypted strings, files,passwords, cyphers, plain text or other data which may containinformation used to perform or authenticate a transaction. While FIG. 2shows the token generator 280 as being a part of the e-commerce system220, it may be hosted by any trusted party with access to the privatekey. For example, the banking server may include a token generator 280.A token may include one or more of the following parameters or otherparameters not listed below:

-   -   a) private-key: The private key provided by the e-commerce        system 220.    -   b) public-key: e-commerce system's 220 public key, provided by        the e-commerce system 220.    -   c) auth-key: any additional data that may be used to        authenticate the transaction, including, but not limited to,        biometric identification, location data and other fraud        detection systems.    -   d) partner-id: The partner ID given provided by the e-commerce        system 220.    -   e) environment: The environment the vendor wants to generate        buttons for. This distinguishes whether the token is being used        in a testing environment or in the live environment (and running        real transactions).    -   f) type: The type of token to generate (e.g. bulk,        email-targeted, etc.). There are multiple types of tokens that a        token generator may generate and decode. For example, site        tokens may be used for website transactions, email tokens for        two-click email payments, and universal tokens for email        validations.    -   g) card: The card token associated with the recipient of this        token. When a customer is registered with the e-commerce system        220, the vendor receives a credit card token—a unique identifier        that references the specific card associated with that customer        and vendor. When the vendor is generating a token to submit to        e-commerce system 220, they may include the card token as a        customer identifier.    -   h) email: The email associated with the receipt of this token.    -   i) URL: The Signup URL the recipient may go to if customer        doesn't have payment information registered with e-commerce        system 220.    -   j) amount: The amount a user should be charged for the        transaction the token is generated for.    -   k) user-data: Data to pass back as a reference. This data may        include custom data that the vendor may want to pass through the        e-commerce system 220 and receive back when a transaction has        completed. It may include an item reference number or SKU,        customer address, or other piece of data that is not required by        e-commerce system 220 to complete a transaction, but that the        vendor wants associated with that transaction.    -   l) expires: Expiration date for token, integer value of seconds        since epoch.    -   m) header-user-agent: The HTTP_USER_AGENT from the request        header. HTTP headers are sent as part of a request from a        customer's web browser unit 242 for a piece of information.        These headers define the parameters that the web browser unit        242 is expecting to get back. The user-agent is the identifier        of the software that is submitting the request—typically the        identifier of the web browser unit 155 that is requesting the        content.    -   n) header-accept-language: The HTTP_ACCEPT_LANGUAGE from the        request header. The accept-language is the acceptable language        for the response—e.g. the language in which the web browser unit        242 is requesting the content be sent back.    -   o) header-accept-charset: The HTTP_ACCEPT_CHARSET from the        request header. The accept-charset is the character sets that        are acceptable for the response—e.g. the character set in which        the web browser unit 242 is requesting the content be sent back.    -   p) ip-address: The IP address of the token recipient.

In one example, a bulk token may be used. A bulk token is a token thatmay not include nor rely on specifics about the customer, for example.In this regard, a bulk token may omit the card and email fields,allowing for the tokens to be shared. Additionally, or alternatively, abulk token may include the card field and/or email field but thee-commerce system 220 may be configured to ignore those fields and/orother fields based on the type field.

By way of example, two architectures for tokens are further describedbelow. The architectures include shared secret and public-keycryptography.

For a shared secret architecture, an administrator may generate aconfiguration file for each end-user. This file may be unique for eachuser. The file may include a username, a personal identification number,and the secret, for example. This configuration file is given to theuser. Any token that uses shared secrets and stores the PIN alongsidethe shared secret in a software client can be stolen and subjected tooffline attacks. Shared secret tokens can be difficult to distribute,since each token is essentially a different piece of software. Each usermust receive a copy of the secret, which can create time constraints.

Tokens may rely on public-key cryptography, or asymmetric cryptography.A PIN can be stored on a remote authentication server instead of withthe token client, making a stolen token no good unless the PIN is knownas well. If there are attempts made to guess the PIN, it can be detectedand logged on the authentication server, which can disable the token.Using asymmetric cryptography also simplifies implementation, since thetoken client can generate its own key pair and exchange public keys withthe server.

The image interfaces module 286 serves as an interface to databaseswithin the e-commerce system 220.

The purchase execution module 288 facilitates the execution of purchasesbetween a customer and a vendor.

The message execution module 290 is configured to analyze receivedmessages and communicate with the token decoder 282 to determine if thereceived message is valid and to identify the request embedded in themessage (e.g. request for purchase of goods.) If the token decoder 282indicates the token is valid, the message execution module 290 may thenaccess the account management unit 222 to verify a transaction.

The database module 292 serves as a database to store information thatmay be accessed by the e-commerce system 220.

The token decoder 282 may be configured to decode tokens received fromexternal sources, such as a vendor system 230 or a customer device 240.

The DomainKeys Identified Mail (DKIM)/Sender Policy Framework (SPF)check module 294 serves to authenticate received emails, using DKIMand/or SPF protocols. For example, SPF allows a domain owner to add afile or record on the server that the recipient server cross-checks.Similarly DKIM may be used to embed information within the email.

The notification HTTP module 296 delivers notices of events to externalsystems, such as an HTTP endpoint the vendor configures to update theirinternal database when a transaction is executed.

An email interface module 298 may be configured to parse emails foraction by the e-commerce system 220.

The account management unit 222 is configured to manage accountsregistered with the e-commerce system 220. A customer or vendor, wishingto complete a transaction with an e-commerce system 220 may registerhis/her email address and payment information with the e-commerce system220. The account management unit 222 may be configured to store acustomer registry and vendor registry.

The security module 224 may be configured to perform additional securitymeasures to prevent unauthorized access to the system or fraud.

The email service provider 250 may be associated with the vendor system230, the e-commerce system 220, or may be a third party entity. Theemail service provider 250 may be configured to provide email marketingservices. The email service provider 250 may further be configured toprovide tracking information showing the status of email sent to eachmember of an address list. The email service provider 250 may further beconfigured to segment an address list into interest groups or categoriesto send targeted information. The email service provider 250 may alsoparse messages based on the secondary system of email targeted tokens.The email service provider 250 may also be configured to send triggeremails based on responses from the vendor or customer behavior. Theemail service provider 250 may further be configured to create or usetemplates generated by the e-commerce system 220 for sending to contactsand/or the use of templates pre-made, email service provider 250 mayinclude a user interface that allows a user to manually adjust thetemplate or it may be integrated with external sources (e.g. vendorsystem 230 or e-commerce system 220). The email service provider 250 maycomprise a send engine, which allows vendors to distribute their messageto the customers. The email service provider 250 may further include atool for generating mailto links, graphic buttons, and tokens. The emailservice provider 250 may be configured to customize dynamically thecontent of emails that are sent out, to tailor personalized informationand mailto links.

The banking server may be controlled by a third party system bank. Thee-commerce system 220 may communicate with the banking server to verifythat the customer has adequate funds or credit for the requestedpurchase. For example, the banking server may be a controlled by VISA,AMERICAN EXPRESS, MASTERCARD or any other bank or banking or financialnetwork that a customer may use for online payment. The banking servermay be an interface for a centralized or decentralized virtual currencysystem or protocol such as frequent flyer miles, “reward” points, orBitcoin.

Point of sale device 215 may include any device capable of interactingwith system 200 for providing details of a transaction. Point of saledevice 215 may include a cash register connected to e-commerce system220 connected via communication network 270, for example.

Alternate payment device 210 may include another payment method for acustomer. Alternate payment device 210 may be utilizes a differentpayment wallet or credit card or debit banking or clearing house, suchas when making a payment and directing the payment to be made from analternate payment device.

The email-based e-commerce system 220 may allow vendors to sendadvertising emails with one or more mailto-links associated with aspecific product offer and select the mailto-link and generate aresponse email by selecting the mailto-link. This response emailcontains a token and is addressed to the e-commerce system 220. Oncesent, this response email confirms the customer's purchase of theproduct or confirmation of a donation by parsing the information in thetoken. The e-commerce system 220 processes the payment and notifies thevendor and the customer. The e-commerce system 220 may comprise orinclude a token generator, components for processing the tokens andcomponents for processing the payments and a system for notifying thevendor system 230 of the transaction details.

Referring back to the example system in FIG. 2, the payment processingsystem 260 may be an independent third party operated unit, it may belocated in the e-commerce system 220 or the vendor system 230.

While the example system shown in FIG. 2 shows the e-commerce system 220comprising the token generator 280, this is shown as an example only.The vendor system 230 may also include a token generator that allowsvendors to directly create tokens. In another example, a third party mayhave a token generator to create tokens for use by the vendor system230.

Referring now to FIG. 3, which illustrates an example of a QR code 300.This QR code 300 may take the form of QR codes, barcodes, or other imagerecognition techniques. The QR code 300 may be placed by a vendor orother entity in advertisements or invoicing. In some embodiments, the QRcodes 300 may be scanned using an application on a mobile device orother reader to generate a response email. The customer views theadvertisement that includes a QR code 300 and scans the QR code 300.Scanning the QR code 300 generates an email addressed to the e-commercesystem 220. This email contains a token with transaction details thatallows the e-commerce system 220, upon receipt of the email, to performcertain checks and process the payment associated with the transaction.

Referring now also to FIG. 4, there is an illustration of atransactional flow diagram for using a QR code with an email-basede-commerce system 220 using email targeted tokens shown as method 400. Avendor system 230 requests QR codes and tokens at step 410. In responseto the request, the e-commerce system 220 generates tokens with QR codesusing the QR and token generator 284 at step 415. The vendor system 230receives the QR codes and tokens from the e-commerce system 220 at step420. The vendor system 230 publishes a QR code to a customer at step425. The customer scans the QR code at step 430 using the customerdevice 240, such as by using the QR scanner 246. An email is generatedwith the token at step 440. Using the email client 244, the customerselects the link or sends the email at step 445. An email is then sentto the e-commerce system 220 at step 450. The token is decoded andauthenticated and the payment is processed by the token decoder 282 ofthe e-commerce system 220 at step 455.

The email targeted token is encoded in a QR code 300. When a customerscans these codes at step 430, an email client 244 may be initiated togenerate a response email at step 450 that is addressed to thee-commerce system 220 and has the required email targeted token. Thistoken may be specific to the customer and may be tied to the emailaddress of the customer. Such a specific token may require uniqueness inthe specific QR code 300 that is provided.

It should be noted that in an alternate embodiment, the process maystart at step 450, whereby the customer simply generates and sends anemail to the e-commerce system 220. In this embodiment, if the user isregistered with the e-commerce system 220, the system 220 validates theemail and processes the financial transaction.

The e-commerce system 220 enables vendor system 230 to request thegeneration QR codes 300 at 410. These QR codes 300 may be encoded togenerate emails for their customers and have those customers registeredwith the e-commerce system 220 so that the vendor system 230 and thecustomers via customer device 240 may perform email-based transactionsvia the e-commerce system 220. This enables the customer to complete afinancial transaction by sending a response email confirming theirintention to make a payment at step 450. The response email step 450 isgenerated using a QR code reader, a smart phone app or any readertechnology.

Customers who are not registered may receive a separate email with URLweb links that drive them to a signup page, but generally follow themethod 400 described above with respect to FIG. 4. The registeredcustomers received emails with mailto links that allow them to checkoutby sending a response email at step 450. These QR codes are associatedwith products or offers of the vendor (collectively steps 420 and 425).When the QR code is scanned such as with QR scanner 246, the applicationopens the email client 244 and generates the response email thatincludes an email targeted token at step 440. To confirm the paymentthis response email is sent to the email e-commerce system 220 at step450. The email is authenticated and the token decoded at step 455. Thesetokens depend on identifying the customer through their email addressincluded in the fields of the email.

In this embodiment, the vendor system 230 or e-commerce system 220 maymaintain “registered” and “unregistered” lists. In this embodiment, thee-commerce system 220 may enable vendors to generate QR codes thatgenerate a response email when scanned. The customer does not need toreceive an email advertisement, but may encounter the QR code in anynumber of places the vendor advertises, including printed or projectedadvertisements, mailers, bills, or invoices. In this embodiment, allregistered members may receive a QR code with the information tocomplete a transaction. In this example, this information might be in apaper invoice mailed to the customer. The customer scans the QR code atstep 430 which opens the email client 244 and generates the responseemail with the token at step 440 and is addressed to the e-commercesystem 220. The customer device 240 then sends the email to thee-commerce system 220 at step 450 and the e-commerce system 220 decodesthe token and processes the payment at step 455. The payment may also beprocessed by the vendor or third party.

In a related version of method 400, the QR code may contain more thanone set of offers and the customer's scanning application may generate aselection of mailto links in one email or open a webpage with theselection. Once presented to the customer on customer device 240 forselection. The customer may then select a mailto link which generates aresponse email.

Referring now to FIG. 4a , the vendor system 230 and e-commerce system220 may be one entity. In this situation, method 400A may depict thesteps of method 400 of FIG. 4 modified to account for the combination ofvendor system 230 and e-commerce system 220. Method 400 a is anillustration of a transactional flow diagram for using a QR code with anemail-based e-commerce system 220 using email targeted tokens with acombined vendor system 230 and e-commerce system 220. The combinedvendor/e-commerce system generates tokens with QR codes using the QRgenerator and token generator 284 at step 415 a. The combinedvendor/e-commerce system publishes the QR code to a customer at step 425a. The customer scans the QR code at step 430 a using the customerdevice 240, such as by using the QR scanner 246. An email is generatedwith the token at step 440 a. Using the email client 244, the customerselects the link or sends the email at step 445 a. An email is then sentto the combined vendor/e-commerce system at step 450 a. The token isdecoded and authenticated and the payment is processed by the tokendecoder 282 at step 455 a.

Referring now to FIG. 5 there is an illustration of a transactional flowdiagram for using a QR code with an email-based e-commerce system 220using URL targeted tokens within method 500. This embodiment makes useof URL target tokens in different formats, such as QR code, to generatethe response email. The response email is addressed to the e-commercesystem 220 and contains a token with the offer information. The customersends the response email to the e-commerce system 220. When thee-commerce system 220 receives the email it validates the identity ofthe sender employing a variety of email authentication techniquesincluding, but not limited to, SPF and DKIM. The e-commerce system 220then decodes the token and processes the payment. This token has all theinformation required to process the transaction. It is for a specificamount and uses the URL targeted token.

More specifically, a vendor system 230 requests QR codes and tokens atstep 510. In response to the request, the e-commerce system 220generates a bulk token with a QR code using the QR and token generator284 at step 515. The vendor system 230 receives the QR codes and tokensfrom the e-commerce system 220 at step 520. The vendor system 230publishes a QR code to a customer in one or more formats at step 525.The customer scans the QR code at step 530 using the customer device 240using the QR scanner 246. An email is generated with the token at step540. Using the email client 244, the customer selects the link at step545. An email is then sent to the e-commerce system 220 at step 550. Theemail system may use URL targeted tokens or bulk tokens and authenticateemail addresses using SPF/DKIM. The SPF/DKIM check occurs and the tokenis decoded and the payment is processed by the token decoder 282 of thee-commerce system 220 at step 555. The email-based e-commerce system 220may receive the response email and perform a SPF/DKIM check toauthenticate the sender of the email. Based on the result of theSPF/DKIM check, the e-commerce system 220 may continue processing theemail.

In a related embodiment, the QR code or barcode may contain more thanone set of offers and the customer's scanning application may generate aselection of mailto links or open a webpage with the selections. Thecustomer would then select a mailto link and generate a response emailwith the required information.

The email-based e-commerce system 220 provides the vendor with the toolsand access to generate the QR codes that are encoded with the tokensrequired for email-based transactions. This may be done on a web-basedtool or via an API. The token generator 284 may generate tokens for usein e-commerce transactions. Tokens may be encrypted or plain textstrings, which contain information to perform a transaction when sent tothe e-commerce system(s) 220. A token may be one or multiple encryptedstrings, files, passwords, cyphers, plain-text or other data which maycontain information used to perform or authenticate a transaction. Theemail-based e-commerce system 220 may also encode those tokens andrequired information in a QR code graphic. The email-based e-commercesystem 220 may allow vendors to include those QR codes and barcodes inany number of advertisements.

Referring now additionally to FIG. 5a , there is an illustration of anexample of QR code advertisement 560 with email-based e-commerce token.Multiple QR codes and barcodes 562, 564, 566 may be used for differentamounts to be charged or for different products or variations onproducts. Because of the nature of bulk tokens and the @Payauthentication process, one QR code or barcode or image may work for allcustomers. Specifically, the illustration provides a picture of theflood in Missouri 568 with three instant donation amounts that areselectable and contain QR codes 562, 564, 566.

Referring now also to FIG. 5b , which illustrates an example of QR codesmartphone reader 570 of email-based e-commerce token, and FIG. 5c ,which illustrates an example of response email 580 generated with token582 for email-based financial transaction. When the customer scans theQR code shown in FIG. 5b , this automatically opens the email client andgenerates a response email addressed 584 to the email-based e-commercesystem 220 as shown in FIG. 5c . This response email contains a token582 and is addressed 584 to the e-commerce system 220. The token 582 maybe visible or non-visible within the response email. Once sent, thisresponse email confirms the customer's purchase of the product, donationor payment by parsing the information in the token 582. The e-commercesystem 220 processes the payment and notifies the vendor and thecustomer.

FIG. 6 illustrates a transactional flow diagram illustrating the use ofa QR code with an email-based e-commerce system 220 such as for use of anon-registered member in method 600. In a similar fashion to the methoddescribed with respect to FIG. 4, a vendor system 230 requests QR codesand tokens at step 610. In response to the request, the e-commercesystem 220 generates tokens with QR codes using the QR and tokengenerator 284 at step 615.

It should be understood that if the e-commerce system 220 is part of thevendor system 230, then steps 610 and 620 may be eliminated and thevendor system 230 may generate the tokens (i.e. step 615) on its own.This applies to the other methods described herein.

The vendor system 230 receives the QR codes and tokens from thee-commerce system 220 at step 620. The vendor system 230 publishes a QRcode to a customer at step 625. The customer scans the QR code at step630 using the customer device 240, such as by using the QR scanner 246.An email is generated with the token at step 640. If the e-commercesystem 220 receives a response email 650 and determines that that it isnon-registered 660, the e-commerce system 220 sends an email to thataddress that has a URL link 670. When the customer opens this email 675and selects the URL link at step 645, it directs them to a web pagesignup where they may register and complete a transaction 680 allowingthe payment to be processed at step 690.

Referring now to FIG. 7, which illustrates a transactional flow diagramfor QR code with additional step of URL product selection page withinmethod 700. Method 700 is initiated with a vendor system 230 requestinga QR code from the e-commerce system 220 at step 710. The QR code isgenerated with a QR code generator 284 at step 715. The e-commercesystem 220 then sends the QR code to the vendor system 230 at step 720.The vendor published the QR code to its customers at step 725. Thecustomers interact with the QR code using customer device's 240 QRscanner 246 at step 730. This interaction with the QR code may includescanning, for example. The interaction of step 730 may cause a browserto be opened at step 750 within the web browser 242 of customer device240. This customer device 240 opens a webpage index within the browserat step 760. In method 700, the QR codes are used to drive the customerto an index of mailto links 745, such as displayed to the customer viathe webpage, that when activated may generate a response email with atoken 770. This index 745 may be viewed on a webpage or through anapplication 760. The application may be a mobile app or a desktopapplication. On this page the customer may view a selection of mailtolinks that give the customer multiple choices. The customer may select amailto link 780 and generate the response email 785. The customer sendsthe response email to the e-commerce system 220. When the e-commercesystem 220 receives the email 785 it validates the identity of thesender employing a variety of email authentication techniques including,but not limited to, SPF and DKIM. The e-commerce system 220 then decodesthe token and processes the payment 790. The payment may also beprocessed by the vendor.

The e-commerce system 220 enables vendors to generate QR codes that areencoded to open an application with a selection of mailto links orgenerate web pages that have a selection or mailto links that when amailto link is selected may generate an email, and have those customersregister with the e-commerce system 220 so that the vendor and thecustomers may perform email-based transactions via the e-commerce system220. This enables the customer to complete a financial transaction bysending a response email confirming their intention to make a payment.The response email is generated using a QR code or barcode reader orsmart phone app or any reader technology.

Customers who are not registered may receive a separate email with URLweb links that drive them to a signup page. The registered customers mayscan QR codes and access the product selection page. These QR codes areassociated with products or offers of the vendor. When the QR code orbarcode is scanned, the application opens an application or opens a webbrowser that contains a list of possible purchases. Each purchase isassociated with a mailto link. This link may be embedded behind animage.

While the present description describes a configuration where the linkis embedded behind an image, the image may be the link, and the link maybe configured where it is non-visible to the customer or otherwise linkor connected to the image. When selected, the device's email client isopened and generates the response email that includes a token. Toconfirm the payment, the response email is sent to the email e-commercesystem 220, the email is authenticated and the token decoded. Thesetokens depend on identifying the customer through their email address.In this embodiment the e-commerce system 220 may enable vendors togenerate QR codes that when scanned may generate the response email.

The customer does not need to receive an email advertisement but may nowencounter the QR code or barcode in any number of places the vendoradvertises printed or projected. The customer then sends the email tothe e-commerce system 220 and the e-commerce system 220 decodes thetoken and processes the payment. The payment may also be processed bythe vendor or third party.

Referring collectively to FIGS. 8-10, there is shown an invoiceincluding a QR code that may be used for any customer. This QR coderequires additional information. In using this QR code with someadditional information being required, the response email acts a requestfor payment (or other information).

In an alternative embodiment, an image, or even a word, may be sent bythe customer to the e-commerce system 220. For example, a customer mayemail the word “Comcast” or “bill me” or email an image or otheridentifier to a specific email address. The token, in this example, maynot specify the invoice total as it had in the other transactionsdescribed above. When the e-commerce system 220 receives the email, theemail is validated including validating the identity of the sender, suchas by employing a variety of email authentication techniques including,but not limited to, SPF and DKIM. The e-commerce system 220 then decodesthe token, which may take the form of a bulk token, for example. Thetoken may have an identifier, or the email address may be theidentifier. The e-commerce system 220 may simply change the amount ofthe invoice via the customers' pre-authorized payment method or mayrequest the missing amount to be charged (or any other requiredinformation) using a webhook.

The e-commerce system 220 may then process the transaction (or thevendor) or send a confirmation email with a token (email or URL basedtoken). In this embodiment, there is a single identifier that may notneed to be in a token but the identifier may be in any field or in theemail address associated to that vendor, or may be an additional emailaddress.

FIG. 8 illustrates an example printed or emailed utility bill 800 withQR code 810. A bulk token may be encoded into a QR code 810 with lessthan the required information since each customer may require differentquantities or amounts. In this example, a vendor who is a utilitycompany wants to invoice their customers. An example of an invoice 800with an email-based QR code 810 may be found in FIG. 8. In thisembodiment, the vendor knows all of the required information for thetransaction and may require consent from the customer or otherwiserequire the customer to agree to the payment. That is, the vendor mayknow the payment amount, the customer account number, and the pertinentpayment information for the customer, while requiring that the customerauthorize that the payment transaction occur. The vendor generates asfew as one QR code and uses it in all advertisements or invoices.

FIG. 9 illustrates an example of QR code and token generator web-basedinterface 900. The token and the QR code may be generated on a web-basedinterface or through and API integration.

FIG. 10 illustrates a transactional flow diagram shown as method 1000for this embodiment. In method 1000, one QR code may be used for everycustomer with the QR code requiring additional information once theemail is received as described. The vendor system 230, including amarketing system, requests a QR code and token from the e-commercesystem 220, at step 1010. The requested QR code is generated by the QRand token generator 284 of e-commerce system 220, at step 1015. Thevendor system 230 may receive the QR code and post on the webpage 1020.The vendor system 230 may publish this QR code to customers in multipleformats at step 1025.

A customer may scan the QR code at step 1030 using QR scanner 246 ofcustomer device 240. An email is generated with the token at step 1040.The customer may view in the email client 244 of customer device 240 atstep 1050. The customer sends an email to the e-commerce system 220 atstep 1060. The e-commerce system 220 authenticates using a SPF/DKIMcheck at step 1070, or other email authentication technique, and whenthe token is decoded this signals that the customer has confirmed thetransaction.

The e-commerce system 220 notifies the vendor electronically, in step1080, as a request for billing details, such as the total amount to becharged. The vendor using the email address identifies the customer anddetermines the total amount to be charged at step 1085. Once determined,the vendor system 230, via an accounts system, for example, provides acomplete invoice to the e-commerce system 220 at step 1090. Thee-commerce system 220 then completes the payment at step 1095. Thepayment may alternatively be processed by the vendor or another partysuch as an email service provider. While not necessarily required, oncethe vendor and e-commerce system 220 determine the amount, an email maybe sent to the customer that confirms the amount.

In this method, the e-commerce system 220 may utilize an existing indexof offers (or invoices) that are familiar to customers either throughadvertising, invoices or email correspondence. This enables the emailrequest for payment to be updated over time without changing the tokenor the QR code. A customer paying a bill may pay the bill each monthusing the same QR code or by sending the same response email.

A vendor, using the vendor server may compose a QR code with URLtargeted tokens that do not have all of the necessary information forthe transaction, but serve to authenticate the email address and tonotify the vendor that the transaction may take place based on thevendors total for the customer. The vendor server requests, from thee-commerce system 220, a QR code to be used for an invoice, offer oradvertisement. This may be, for example a URL targeted token. Thisrequest may be transmitted via an API, via an online interface, orgenerated with a system embedded within the vendor server or with anonline interface or software or application.

The vendor server may receive these QR codes and integrate them into anynumber of invoices or advertising campaigns. For example, the customermay receive utility bill and on that bill may be printed the amountowed, also printed on this invoice is a QR code or barcode. (This QR orbarcode be anywhere i.e. on a billboard, TV or magazine). A customer mayscan these codes where they are displayed and generate a response emailon their device. The response email may include the bulk token and beaddressed to the email-based e-commerce system 220. As described above,the token is located in the body field, however, this is as an exampleonly, and the token may be located in other fields of the email. Thetoken may contain a vendor identifier.

The identifier may be the email address itself. To the customer, thetarget address of the response email may appear to be directed to thevendor server; however, it may be directed to the e-commerce system 220.The location of the e-commerce system 220 may be contained in a thirdparty such as an email service provider, email client or hosting entity.The email-based e-commerce system 220 may receive the response email andperform a SPF/DKIM check to authenticate the sender of the email. Basedon the result of the SPF/DKIM check, the e-commerce system 220 maycontinue processing the email. In a related embodiment, the QR code orbarcode code may contain more than one set of offers and the customer'sscanning application may generate a selection of mailto links or open aweb page with a selection of offers. The customer may then select amailto link and generate a response email with the required information.

FIG. 11 illustrates a transaction flow diagram for image recognition onthe customer's device and may be filed as token as shown in method 1100.The image recognition may not require specific software be used oncustomer device 240. Customer device may utilize the camera found withincustomer device 240, for example. An image or another file format may beemailed to the e-commerce system 220. This email may contain all or someof the necessary information for the transaction. The image may beprocessed in the e-commerce system 220. In this embodiment, for example,the image of the QR, fingerprint or logo of the store may be emailed tothe e-commerce system 220 to authenticate the email and then process theimage or file. A variety of email authentication techniques including,but not limited to, SPF and DKIM may be used to authenticate theidentity of the sender as discussed hereinabove. The image/attachmentmay also be used to authenticate the identity of the sender as discussedhereinabove.

In this embodiment, a customer device 240 may communicate with thee-commerce system 220 at step 1110. An attachment or image may begenerated by an attachment application within customer device 240 atstep 1120. The email client 244 of customer device 240 may send an emailcontaining the attachment at step 1130 to the e-commerce system 220.Using an attachment decoder within the e-commerce system 220 theattachment may be decoded and the transaction processed at step 1140.The e-commerce system 220 may perform an SPF/DKIM check and theprocessing of the QR code may be performed by the e-commerce system 220at step 1140. Although in this example, an attachment is used, thisattachment may be a QR or any attachment or MIME Multipart orMixed/Multipart message. These attachment(s) might appear in any fieldor in multiple fields. Different attachments may represent differentparts of the order such as size, price destination and quantity andallow the system to parse the data based on that distinction. Theattachment may serve as the form of authentication for example a voicerecognition file or thumb print. The attachment may have the necessaryinformation for the transaction or may represent a single category ofinformation, or any portion of the information in between.

FIG. 12 illustrates a transactional flow diagram of email-basede-commerce with image recognition shown in method 1200. In the imagerecognition, the index may be updated at step 1206 by the e-commercesystem 220. Once updated, an image criterion is determined by thecustomer device 240 at step 1202. The criteria may be sent to thee-commerce system 220 at step 1204. The product may be recognized andoffers determined in the e-commerce system 220 at step 1208. The tokensmay be requested at step 1210. The tokens may be generated at step 1215.The generated tokens may be communicated to the customer device 240 atstep 1260. The customer may select the desired offer at step 1270. Anemail may be generated with the token at step 1240, the customer selectsat step 1245 and an email is sent to the e-commerce system 220 at step1250. The email is validated, token decoded and payment processed atstep 1255.

An image recognition application may be used to recognize the productand present offers to a customer. Such an image recognition applicationmay include an application that analyzes an image of a product todetermine items within the image, and may then provide information aboutor associated with the product or related products. The customer selectsan offer 1245 and generates an email 1250. The email is sent to thee-commerce system 220 and the payment processed 1255. In anotherembodiment the email-based e-commerce system 220 allows the vendor tomodify a set of offers and associated offer details on the e-commercesystem 220. This may be done on a web-based tool or via an API. Thevendor may use this system to upload images or enter image propertiesand may associate these with a token. An index of offers may be accesseddirectly by customers and viewed in list form. A customer may be able tolocate offers by viewing products on screen or by name or image. Theapplication may also enable the customer to scan or photograph an image,and compare image properties with those properties and criteria storedin the server. Where criteria match, the application generates a seriesof offers stored on the server and displays them on the interface. Eachoffer may be associated with a mailto link in the display. The customerselects a mailto link and generates an email addressed to the e-commercesystem 220 containing a token. Tokens may be encrypted or plain textstrings which contain information to perform a transaction when sent tothe e-commerce system(s) 220. A token may be one or multiple encryptedstrings, files, passwords, cyphers, plain-text or other data which maycontain information used to perform or authenticate a transaction.

To approve the purchase, the customer sends the email. When thee-commerce system 220 receives the email it validates the identity ofthe sender employing a variety of email authentication techniquesincluding, but not limited to, SPF and DKIM. The e-commerce system 220then decodes the token and processes the payment. The payment may alsobe processed by the vendor. Non-registered customers may be registeredmultiple ways, either at the moment of installation of the applicationor its first use via a URL or application interface. The customer mayalso be sent an email after the first email that has a URL link thatwhen selected directs the customer to a signup page.

Referring now to FIG. 13, it illustrates a transactional flow diagram ofa mobile web checkout operating when there is no request email shown inmethod 1300. This opens the response email directly. In this embodiment,a registered customer visits a registered vendor at step 1360 and placesa series of items in their shopping cart using their customer device 240interacting with vendor system 230. The vendor system 230 thencalculates the total of the items in the cart at step 1365. Vendorsystem 230 then requests payment via email to e-commerce system 220 atstep 1370. E-commerce system 220 generates a token at step 1315 usingtoken generator 284, and sends the token to the customer device 240 atstep 1380 using web browser. As has been discussed herein, while thedescription describes that the e-commerce system 220 generates thetoken, the token may be generated directly by the vendor system 230, forexample. The user may select a payment option that may trigger thegeneration of an email addressed to the e-commerce system 220 and mayinclude the token at step 1340. This email may be viewed in the emailclient 244 at step 1330. The customer device 240 may then send the emailto the e-commerce system 220 at step 1350. This email may complete thepurchase from the customer perspective. The email is validated and thetoken decoded using token decoder 282, and the payment is processed atstep 1390.

Registered customers access a web browser within customer device 240 andmay visit registered vendor system 230 websites and select productsservice or donations in a shopping cart in steps 1360 and 1365. Thevendor's system is enabled to recognize the registered customer and whenan update is made, the total charged is calculated and a new token iscreated by the e-commerce system 220 at step 1315. When the customerselects the option to pay by email mailto link the customer deviceinitiates a view change, opening up the email client and generating theresponse email at step 1385 and 1340. The mailto link contains a commandfor the view shift, email generation as well as the token. The customermay be required to enter their email address. The response email isaddressed to the e-commerce system 220 and has the token. The customersends the email at step 1350. The e-commerce system 220 receives theemail and authenticates the email address and decodes the token at step1390. A variety of email authentication techniques including, but notlimited to, SPF and DKIM might be used to authenticate the identity ofthe sender or the image/attachment may also serve that purpose. When thecustomer is authenticated, the payment is processed. In this example,the tokens are generated in the e-commerce system 220 but they may begenerated in the vendor's system or in an application of the customer'sdevice.

FIG. 14 illustrates an example of a smartphone application that is acashier QR code/barcode reader with email client for email-basede-commerce transactions 1400. In this embodiment, a registered vendorgenerates QR codes in their brick and mortar store. Checkout personneluse the application either in their checkout counter or their smartphonetablet or computer. The application reads each item with the aid of thescanner and then produces a total amount due. This may also be manuallytyped in on the application. An example of one possible interface isshown in FIG. 14. This interface enables the checkout personnel to scanor manually type in the amounts and generate a total.

FIG. 15 illustrates a transactional flow diagram for application thatincludes a cashier QR code reader or other point of sale device withemail client for email-based e-commerce transactions in method 1500. Inmethod 1500, a registered vendor system 230 requests QR codes 1510 thatare generated by the e-commerce system 220 via QR and token generator284 at step 1515. The vendor system 230 receives the QR codes, such asin their brick and mortar store, at step 1520 and uses an application asa cashier. For example, the sales person may scan the offer at step1560, and at the point of sale device 215 calculates a total for thetransaction at step 1565. An email is generated at the point of saledevice 215 requesting an invoice from the e-commerce system 220 andtoken generator 284 at step 1570. The e-commerce system 220 then sendsan email request to the customer for confirmation at step 1575. Thisrequest may include a mailto link and a token. The customer may selectthe mailto link at step 1545 and may send an email to the e-commercesystem 220 to process the payment 1550. The e-commerce system 220 mayvalidate the email, decode the token and process the underlying paymentat step 1555.

When the total cost is calculated, the vendors device requests that thee-commerce system 220 generate a token and sends an invoice to thecustomers email at step 1575. The customer receives the email thatcontains a mailto link associated with the total amount owed. Thismailto link may be embedded behind an image, for example. The customerselects via customer device 240, the mailto link 1545, which generates aresponse email with at step 1550. The email is addressed to thee-commerce system 220. The e-commerce system 220 receives the email andauthenticates the email address and decodes the token at step 1555 asdescribed above. A variety of email authentication techniques including,but not limited to, SPF and DKIM might be used to authenticate theidentity of the sender or the image/attachment may also serve thatpurpose. When the customer is authenticated, the payment is processed atstep 1555. A notification, such as a summary of the transaction orreceipt, for example, may be sent to the point of sale and to thecustomer. The point of sale cashier application may recognize thenotification and file it. For example, the notification may be filed inpreset categories determined by the checkout personnel or storemanagement.

Referring now collectively to FIGS. 16a-c , there is shown a variationof the email-based e-commerce methods described herein. In this example,the mailto link is selected and opens an application that may offer thecustomer alternative options, such as a new payment method, and/orperforms an authentication using biometric or password authentication.In this example, such a biometric authentication may take the form of athumbprint. Once authenticated the email is sent and the paymentprocessed. The authentication application may open the email client andgenerate the email confirmation or the authentication application may beembedded in the email client application itself. An authentication mayalso happen in the e-commerce system 220.

By way of specific example, FIG. 16a illustrates an example of interfacefor biometric interface and email-based e-commerce in method 1600 foruse herein. An example of a thumbprint interface 1610 is shown operatingon a customer device 240. In this example, the application requestsauthentication of a thumb print. Other types of authentication may alsobe used, including other criteria such as voice recognition, retinalscan, and movement of the phone or gesture on the screen, GPS orpassword, by way of non-limiting example only.

FIG. 16b illustrates a transactional flow diagram for biometricauthentication and email-based e-commerce in method 1700. In method1700, a customer registered with the e-commerce system 220 has installedan application 1705 that requires an additional confirmation by thecustomer. This confirmation may offer the customer alternatives topayment or provide enhanced security.

Method 1700 includes an index 286 being updated 1710 between theapplication 1705 and the biometric authentication of the e-commercesystem 220. The vendor system 230 requests a token from the e-commercesystem 220 at step 1715. The token is generated by the e-commerce system220 at step 1720. The generated token is sent from the e-commerce system220 to the vendor system 230 at step 1725. The token is embedded in amailto link by the vendor system 230 at step 1730. The mailto link ispromoted at step 1735. A customer selects an offer using customer device240 in the mailto link at step 1740. The selection opens application ondevice 240 with token at step 1745. The customer views an offer ondevice 240 and approves with authentication, such as a thumbprint, atstep 1750. An email including authentication information and the tokenis sent from the customer device 240 to the e-commerce system 220 atstep 1755. The email is validated, the token decoded, and paymentprocessed at step 1790. It should be noted that in an alternativeembodiment, the biometric information (such as a fingerprint as or otheridentifiers as disclosed above) may comprise the token.

This application 1705 may be directly integrated into the email clientand may require additional authentication such as a biometric sensor forexample. In this example, the customer encounters a mailto link providedby a vendor who is also registered with the e-commerce system 220. Themailto links may be provided to the customer in various ways includingbut not limited to email, web URL, application, attachments, QR codes,barcodes, multipart or mix multipart messages. Embedded in the mailtolink is a token that contains at least one identifier for biometricauthentication which is recognized by the application. The mailto linkmay be embedded behind an image. The application 1705 parses the tokenand recognizes the command for additional confirmation and initiates thealternative payment method process. An application displays informationabout the purchase and a request for biometric authentication, forinstance. The application 1705 may perform more than one function andmay be part of other applications such as an email client. Theapplication 1705 decodes the mailto link and the token and recognizesthe command to engage the biometric authentication application beforesending the email. The email client 244 and the biometric application1705 are separate but for the customer they may appear as the sameapplication. The token may also be generated by the application and notbe present in the first mailto link. The application 1705 may be incommunication with the vendor system 230, e-commerce system 220 or otherthird party. Since the email-based e-commerce system 220 is based in thesecurity of the email client the same biometric authentication may beused to access the email client. In this example, the registeredcustomer has securely stored a thumb or other finger imprint on theapplication. If confirmed, the application 1705 generates an email 180that is addressed to the e-commerce system 220. This email 180 containsa token and is addressed to the e-commerce system 220. The token mayinclude a derivative of the thumbprint or other biometrics. To confirmpayment the customer sends the email to the e-commerce system 220. Thegesture of pressing the thumb for imprint and the send function may beone gesture or separate. Or in another example of voice recognition thespoken word “send” or the phrase “I confirm this purchase” may be usedas a form of authentication and the command to send the message ornotification. When the e-commerce system 220 receives the email 180, itmay validate the identity of the sender employing a variety of emailauthentication techniques including, but not limited to, SPF and DKIM.The e-commerce system 220 then decodes the token and processes thepayment. This token has all the information required to process thetransaction.

FIG. 16c illustrates a transactional flow diagram for alternativepayment methods 210 as shown in method 1800. In method 1800, a customerregistered with the e-commerce system 220 has installed an applicationon customer device 240 that requires an additional confirmation by thecustomer. This confirmation may offer the customer alternatives topayment for enhanced security at step 1850. One example of this methodoccurs when a customer chooses to direct the payment to a differentpayment wallet or credit card or debit banking or clearing house andthis alternative payment method may be used at step 1855.

Specifically, method 1800 may include a vendor system 230 requesting atoken from the e-commerce system's 220 QR and token generator 284 atstep 1815. The token may be generated by the QR and token generator 284at step 1820. The e-commerce system 220 may send the token to the vendorsystem 230 at step 1825. The vendor system 230 may then embed the tokenin a mailto link at step 1830. This mailto link may then be delivered orpromoted by the vendor system 230 to the customer device 240 at step1835. The customer device 240 using the mailto link of email client 244may select an offer at step 1840 and then the customer device 240 mayopen an application with the token at step 1845. This application may besimilar to the application 1705 of FIG. 16b , for example. The customerthrough customer device 240 may view the offer and approve alternativepayment methods at step 1850. The application via customer device 240may alert the alternate payment method at step 1855.

QR codes vary graphically in complexity and number of patterns utilizedin their composition. One limitation often encountered is the necessityfor large complex QR codes to be used in order to contain all of thenecessary token data required for an email based transaction. A method1900 illustrated in FIG. 17 may be utilized. In method 1900, agraphically less complex QR code 2000, such as the code illustrated inFIG. 18, may be used. QR code 2000 may include less information encoded.A larger customer base may be accessed with the use of graphicallysimpler QR codes because a greater variety of reader applications may beutilized. The vendor system 230 using a web-based application or adirect integration with the e-commerce system 220 requests a QR code atstep 1910 and token from the e-commerce system's 220 QR code and tokengenerator 284 is generated at step 1915. The code is processed through aURL shortener, which generates code that requires less graphicallycomplex QR code. The URL shortener is located in the ecommerce system220 in this example, however this shortener may also be a separatesystem or located elsewhere within the present system. The QR code isshared with the vendor system 230 at step 1920 and stored in a databaseaccessible to the application server. The vendor system 230 publishesthe QR code at step 1925. The reader is an application on a smartphone,for example. Using a QR reader 246 on customer device 240, the customerscans the QR code at step 1930 and the application opens the default webbrowser 242 at step 1935 directed to the shortened URL on theapplication server using a mailto link request at step 1940. Thisrequest is translated by the URL shortening service on the e-commercesystem 220 to the original mailto link at step 1950 and the token fromthe e-commerce system 220 is returned to the customer's device 240 atstep 1955. The email client 244 on the customer device 240 is opened andthe response email is generated at step 1960. This response is addressedto the e-commerce system 220 with the token required and the email issent at step 1965. On some devices, the QR reader may not display thebrowser to the customer. Visually the customer may experience thescanning of the code and the generating of a response email. Thecustomer approves the transaction by sending the email addressed to theecommerce system 220 at step 1965. When the e-commerce system 220receives the email it validates the identity of the sender employing avariety of email authentication techniques including, but not limitedto, SPF and DKIM. The e-commerce system 220 then decodes the token andprocesses the payment at step 1970.

It should be understood that many variations are possible based on thedisclosure herein. Although features and elements are described above inparticular combinations, each feature or element may be used alonewithout the other features and elements or in various combinations withor without other features and elements.

The methods or flow charts provided herein may be implemented in acomputer program, software, or firmware incorporated in a non-transitorycomputer-readable storage medium for execution by a general purposecomputer or a processor. Examples of non-transitory computer-readablestorage mediums include a read only memory (ROM), a random access memory(RAM), a register, cache memory, semiconductor memory devices, magneticmedia such as internal hard disks and removable disks, magneto-opticalmedia, and optical media such as CD-ROM disks, and digital versatiledisks (DVDs).

What is claimed is:
 1. A method implemented in an e-commerce system tofacilitate transactions between a customer and a vendor, the methodcomprising: generating, by a processor, the requested at least one QRcode and token; transmitting, by a transmitter, the at least one QR codeand token; receiving, by a receiver, a response email, wherein theresponse email includes the token; decoding, by the processor, thetoken; performing, by the processor, an Sender Policy Framework (SPF)and DomainKeys Identified Mail (DKIM) validation; and processing, by theprocessor, the transaction, on a condition that the SPF and DKIMvalidations are approved.
 2. The method of claim 1 wherein the generatedQR code and token are capable of being delivered by the vendor tocustomers.
 3. The method of claim 1 wherein the response email isgenerated by the user interacting with the QR code and token.
 4. Themethod of claim 1, further comprising the steps of: generating, by theprocessor, a request for billing details; transmitting, by atransmitter, the generated request for billing details; and receiving,by the receiver, the billing details.
 5. The method of claim 4 whereinthe billing details provide information for completing the transaction.6. An e-commerce system to facilitate transactions between a customerand a vendor, the e-commerce system comprising: a processor configuredto generate at least one QR code and token; a transmitter configured totransmit the at least one QR code and token; the receiver configured toreceive a response email, wherein the response email includes the token;the processor configured to decode the token; the processor configuredto perform a Sender Policy Framework (SPF) and DomainKeys IdentifiedMail (DKIM) validation; and the processor configured to process thefinancial transaction, on a condition that the SPF and DKIM validationsare approved.
 7. The system of claim 6 wherein the generated QR code andtoken are capable of being delivered by the vendor to customers.
 8. Thesystem of claim 6 wherein the response email is generated by the userinteracting with the QR code and token.
 9. The system of claim 6,wherein the processor generates a request for billing details; thetransmitter transmits the generated request for billing details; and thereceiver receive the billing details.
 10. The system of claim 6 whereinthe billing details provide information for completing the transaction.11. A method implemented in a vendor system for transactions between acustomer and a vendor facilitated by an e-commerce system, the methodcomprising: transmitting, by a transmitter, a request for at least oneQR code and token for use in an advertising campaign; receiving, by areceiver, the at least one QR code and token; transmitting, by atransmitter, a plurality of advertisement emails to a list ofrecipients, wherein the list of recipients includes registered andnon-registered individuals, the advertisement emails including a mailtolink that includes the at least one QR code and token; receiving, by thereceiver, a notification message, wherein the notification messageincludes a confirmation that a transaction has been processed based onone of the transmitted plurality of advertisement emails; and executingan order for a customer in response to the received notificationmessage.
 12. The method of claim 11 wherein the generated QR code andtoken are capable of being delivered by the vendor to customers.
 13. Themethod of claim 11 wherein the response email is generated by the userinteracting with the QR code and token.
 14. The method of claim 11,further comprising the steps of: generating, by the processor, a requestfor billing details; transmitting, by a transmitter, the generatedrequest for billing details; and receiving, by the receiver, the billingdetails.
 15. The method of claim 14 wherein the billing details provideinformation for completing the transaction.